A r t i c l e s
Navigation

Note: This site is
a bit older, personal views
may have changed.

M a i n P a g e

D i r e c t o r y

Why C Builder Never Took Over Delphi


Why did C++ builder never take over Delphi?

In fact a prediction long long ago, by many of the C++ programmers on usenet and other places, was that "Ha ha as soon as C++ Builder comes out, C++ is going to rule the world because C++ is such a superior language over delphi". Well, Delphi ended up having way more users than C++ Builder.

Theories.. that may sound way out of line..

Both the IDE and the language account for how rapidly you can think in a language. Some people find that Pascal is a bit more natural to think in than C++. For example, C++ defines functions and declarations backwards when we consider that humans read english from left to right, not right to left.

Eventually, as a C++ programmer, one gets used to declaring the result of the function before declaring the function - but maybe in a RAD environment like Delphi, people want to think like they are used to - from left to right.

For example

  function test: integer;
This above statement says that the function called test returns an integer. From left to right, it is rapidly easy to understand.
  __stdcall int test;
This above says that a standard call integer, is a test. Huh? Okay, so C++ is a bit backwards and cryptic. Maybe this is one reason why C ++ builder didn't take over delphi.

Another reason maybe why C++ Builder didn't take over Delphi, was because C++ programmers were motivated enough to just use Microsoft Visual C++. True, Microsoft Visual C++ didn't have all the RAD capabilities - but really good programmers can write good applications in an IDE without RAD. They are motivated and ambitious enough to use an IDE that doesn't have all the benefits. RAD doesn't make or break whether an application is finished or not. It is helpful, but not vital.

C++ Builder also used the VCL which was written in Delphi. Many C++ programmers did not like the fact that they were using a VCL (visual component library) written in Delphi. They'd prefer if the VCL was written in C++.

One advantage of Visual C++ is that you can have an application that is sometimes faster than a Delphi one since they don't haul in as much abstractions as the VCL - so maybe folks chose Visual C++ over C builder and Delphi continued to rule since folks weren't interested in this "VCL" stuff. But then again, Delphi has KOL available for those who are interested in speed and size - although KOL is not marketed, not famous, and not very well known.

Another reason why maybe Borland C++ Builder didn't take over delphi, was that companies preferred to play it safe and use Visual C++. A lot of programmers are not brave programmers willing to do anything different - if all the other guys were using Visual C++, why should we choose C++ Builder? Doesn't the income and salary of a programmer have higher priority than his favorite tool? Real brave programmers will use their favorite tool, even if it means turning down a job. Some programmers are motivated and skilled enough to master several tools, such as Visual C++, Delphi, And C++ builder - not just one alone (but not too many, otherwise they become a jack of all trades). Typically, though, programmers are not brave - they go with the flow. The flow was Visual C++.

Some programmers don't know about exploiting niche markets - if very few people were using C++ Builder, then one could own or master that niche market. However, most people don't have the guts to exploit niche markets. Visual C++ was the mainstream market, and C++ builder was a niche market. Maybe the fact that C++ Builder was a niche market turned people off from using it, since so few people know how to master niche markets.

C++ Builder may also have been buggy, more buggy than Microsoft Visual C++? I can't comment here, because I don't know enough about the bugs that existed or how many existed in the tools.

Or maybe C++ builder was not ANSI C compliant enough (even though MS VC is not 100 percent ansi compliant).

Most likely, it was a combination of the above issues rather than one reason alone.

About
This site is about programming and other things.
_ _ _